home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / language / embedded / m68k / 68343ffp.arc / IEFEXP.SA < prev    next >
Text File  |  1989-08-30  |  3KB  |  69 lines

  1.          TTL       IEEE FORMAT EQUIVALENT EXPONENT (IEFEXP)
  2. ***************************************
  3. * (C) COPYRIGHT 1981 BY MOTOROLA INC. *
  4. ***************************************
  5.  
  6. *************************************************
  7. *                  IEFEXP                       *
  8. * IEEE FORMAT EQUIVALENT EXPONENT FUNCTION      *
  9. *                                               *
  10. *  INPUT:   D7 - IEEE FLOATING POINT ARGUMENT   *
  11. *                                               *
  12. *  OUTPUT:  D7 - IEEE FLOATING POINT EXPONENTIAL*
  13. *                RESULT                         *
  14. *                                               *
  15. *     ALL OTHER REGISTERS ARE TRANSPARENT       *
  16. *                                               *
  17. *       MAXIMUM STACK USED:   54 BYTES          *
  18. *                                               *
  19. *  CONDITION CODES:                             *
  20. *        Z - SET IF RESULT IN D7 IS ZERO        *
  21. *        N - CLEARED                            *
  22. *        V - SET IF RESULT IS NAN (NOT-A-NUMBER)*
  23. *        C - UNDEFINED                          *
  24. *        X - UNDEFINED                          *
  25. *                                               *
  26. *                                               *
  27. *  NOTES:                                       *
  28. *    1) IF THE INPUT ARGUMENT IS A NAN (NOT-A-  *
  29. *       NUMBER) THEN THE "V" BIT WILL BE SET    *
  30. *       AND THE ARGUMENT UNCHANGED UPON RETURN. *
  31. *    2) SEE THE MC68344 USER'S GUIDE FOR DETAILS*
  32. *       ON THE RANGE OF IEEE NORMALIZED VALUES  *
  33. *       SUPPORTED.                              *
  34. *    2) SPOT CHECKS SHOW AT LEAST 6.8 DIGIT     *
  35. *       ACCURACY FOR ALL ABS(ARG) < 30.         *
  36. *                                               *
  37. *************************************************
  38.          PAGE
  39. IEFEXP   IDNT  1,1 IEEE FORMAT EQUIVALENT EXP
  40.  
  41.          OPT       PCS
  42.  
  43.          SECTION   9
  44.  
  45.          XDEF      IEFEXP                        ENTRY POINT
  46.  
  47.          XREF      9:FFPEXP            FAST FLOATING POINT EXPONENT
  48.          XREF      9:IEFSOP            FRONT-END SINGLE ARGUMENT ROUTINE
  49.          XREF      9:IEFTIEEE         BACK-END RETURN TO IEEE FORMAT
  50.          XREF      9:IEFRTD7          RETURN TO CALLER ARGUMENT IN D7
  51.          XREF      FFPCPYRT            COPYRIGHT STUB
  52.  
  53. ************************
  54. * EXPONENT ENTRY POINT *
  55. ************************
  56. IEFEXP   BSR       IEFSOP    CONVERT ARGUMENT TO FFP FORMAT
  57.          BRA.S     IEFNRM    BRANCH NORMALIZED
  58. * ARGUMENT IS AN INFINITY
  59.          BPL.S     IEFDRTN   BRANCH IF PLUS - RETURN ITSELF
  60.          MOVE.L    #0,D7     RETURN PLUS ZERO IF WAS NEGATIVE INFINITY
  61. IEFDRTN  BRA       IEFRTD7   RETURN THE RESULT THAT IS IN D7
  62.  
  63. * ARGUMENT IS NORMALIZED
  64. IEFNRM   BSR       FFPEXP    CALL FAST FLOATING POINT EXPONENT FUNCTION
  65.          BRA       IEFTIEEE  AND RETURN IN IEEE FORMAT
  66.  
  67.          END
  68.  
  69.